<html>
<head><meta charset="utf-8"><title>Difference between `PathKind::Dependency` and `Crate` · t-compiler/help · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/index.html">t-compiler/help</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html">Difference between `PathKind::Dependency` and `Crate`</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="208411070"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208411070" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208411070">(Aug 29 2020 at 01:49)</a>:</h4>
<p>What's the difference between <code>PathKind::Dependency</code> and <code>PathKind::Crate</code> for purposes of metadata loading?<br>
<a href="https://doc.rust-lang.org/nightly/nightly-rustc/rustc_session/search_paths/enum.PathKind.html">https://doc.rust-lang.org/nightly/nightly-rustc/rustc_session/search_paths/enum.PathKind.html</a></p>
<p>Context: rustdoc wants to load <em>all</em> extern crates at startup, but it's missing some because they have different kinds and it can only look them up by name, not by kind: <a href="https://github.com/rust-lang/rust/pull/75176#issuecomment-683216599">https://github.com/rust-lang/rust/pull/75176#issuecomment-683216599</a>, <a href="https://github.com/rust-lang/rust/issues/68427">https://github.com/rust-lang/rust/issues/68427</a>, <a href="https://github.com/rust-lang/rust/blob/master/src/librustdoc/core.rs#L441">https://github.com/rust-lang/rust/blob/master/src/librustdoc/core.rs#L441</a></p>



<a name="208412034"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208412034" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208412034">(Aug 29 2020 at 02:17)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> might have some insight</p>



<a name="208414037"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414037" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414037">(Aug 29 2020 at 03:11)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> <code>--extern</code> vs <code>extern crate</code>? just grep for the name</p>



<a name="208414083"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414083" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414083">(Aug 29 2020 at 03:12)</a>:</h4>
<p>ok that tracks with why rustdoc isn't passing it</p>



<a name="208414087"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414087" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414087">(Aug 29 2020 at 03:12)</a>:</h4>
<p>apparently it <em>only</em> looks at <code>--extern</code>, not <code>extern crate</code></p>



<a name="208414089"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414089" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414089">(Aug 29 2020 at 03:12)</a>:</h4>
<p>wait, <em>search paths</em> might be <code>-L</code></p>



<a name="208414091"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414091" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414091">(Aug 29 2020 at 03:12)</a>:</h4>
<p>which means that it doesn't pick up on builtin crates like <code>alloc</code> and <code>proc_macro</code></p>



<a name="208414099"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414099" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414099">(Aug 29 2020 at 03:13)</a>:</h4>
<blockquote>
<p>thread 'rustc' panicked at 'Unable to resolve external crate core', src/librustdoc/core.rs:452:37</p>
</blockquote>
<p><em>great</em></p>



<a name="208414143"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414143" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414143">(Aug 29 2020 at 03:14)</a>:</h4>
<p>ugh this hack will be a mess even if it works</p>



<a name="208414144"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414144" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414144">(Aug 29 2020 at 03:14)</a>:</h4>
<p>why can't I find it</p>



<a name="208414181"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414181" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414181">(Aug 29 2020 at 03:15)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> <code>PathKind</code> might be a red herring now that I look closer</p>



<a name="208414231"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414231" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414231">(Aug 29 2020 at 03:16)</a>:</h4>
<p>but I think my original intuition was right on what <em>is</em> the problem. you're using <code>resolve_str_path_error</code> which cannot cause crates not in <code>--extern</code> to be loaded I don't think</p>



<a name="208414239"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414239" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414239">(Aug 29 2020 at 03:17)</a>:</h4>
<p>that's what causes the crate to be loaded when it panics though</p>



<a name="208414242"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414242" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414242">(Aug 29 2020 at 03:17)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/pull/75176#issuecomment-670511952">https://github.com/rust-lang/rust/pull/75176#issuecomment-670511952</a></p>



<a name="208414247"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414247" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414247">(Aug 29 2020 at 03:17)</a>:</h4>
<p>resolve goes through                 <code>self.crate_loader.maybe_process_path_extern(ident.name)</code></p>



<a name="208414250"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414250" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414250">(Aug 29 2020 at 03:17)</a>:</h4>
<p>wait why are you passing the crate name unprefixed?</p>



<a name="208414289"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414289" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414289">(Aug 29 2020 at 03:18)</a>:</h4>
<p>I would expect <code>::</code> prefixing or something</p>



<a name="208414299"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414299" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414299">(Aug 29 2020 at 03:18)</a>:</h4>
<p>I can add it, that's not a bad idea</p>



<a name="208414300"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414300" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414300">(Aug 29 2020 at 03:18)</a>:</h4>
<p><span class="user-mention silent" data-user-id="232545">Joshua Nelson</span> <a href="#narrow/stream/182449-t-compiler.2Fhelp/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60/near/208414099">said</a>:</p>
<blockquote>
<blockquote>
<p>thread 'rustc' panicked at 'Unable to resolve external crate core', src/librustdoc/core.rs:452:37</p>
</blockquote>
<p><em>great</em></p>
</blockquote>
<p>is this what you care about, or the thing you just linked?</p>



<a name="208414302"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414302" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414302">(Aug 29 2020 at 03:18)</a>:</h4>
<p>I don't think it would make a diferent though</p>



<a name="208414304"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414304" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414304">(Aug 29 2020 at 03:18)</a>:</h4>
<p>they look very different</p>



<a name="208414306"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414306" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414306">(Aug 29 2020 at 03:18)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> no</p>



<a name="208414308"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414308" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414308">(Aug 29 2020 at 03:18)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> I'm surprised it ever worked without <code>::</code> lol</p>



<a name="208414313"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414313" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414313">(Aug 29 2020 at 03:19)</a>:</h4>
<p>the thing I care about is that rustdoc is missing some crates before it clones the resolver</p>



<a name="208414319"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414319" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414319">(Aug 29 2020 at 03:19)</a>:</h4>
<p>okay but the two failure modes are very different</p>



<a name="208414328"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414328" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414328">(Aug 29 2020 at 03:19)</a>:</h4>
<p>the panic I just posted is not on github, it's me trying random things locally</p>



<a name="208414375"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414375" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414375">(Aug 29 2020 at 03:20)</a>:</h4>
<p>it turns out the <em>only</em> crate that was being loaded when documenting libproc_macro was <code>std</code></p>



<a name="208414380"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414380" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414380">(Aug 29 2020 at 03:20)</a>:</h4>
<p>hmm but std depends on core ... now I'm confused again</p>



<a name="208414386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414386">(Aug 29 2020 at 03:21)</a>:</h4>
<p>yeah <code>::</code> doesn't make a difference</p>



<a name="208414396"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414396" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414396">(Aug 29 2020 at 03:21)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> you can't access indirect dependencies</p>



<a name="208414400"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414400" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414400">(Aug 29 2020 at 03:21)</a>:</h4>
<p>they have to be in your <code>Cargo.toml</code> which means they get passed as <code>--extern</code></p>



<a name="208414401"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414401" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414401">(Aug 29 2020 at 03:21)</a>:</h4>
<p>I see what the problem is, you're not operating with a sysroot</p>



<a name="208414405"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414405" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414405">(Aug 29 2020 at 03:21)</a>:</h4>
<p>the indirect dependency here is <code>core</code></p>



<a name="208414443"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414443" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414443">(Aug 29 2020 at 03:22)</a>:</h4>
<p><code>libproc_macro</code> is the same as building <code>libstd</code> itself, wrt <code>libcore</code></p>



<a name="208414451"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414451" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414451">(Aug 29 2020 at 03:22)</a>:</h4>
<p>there's no libraries in the sysroot yet, this is the step to create them</p>



<a name="208414453"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414453" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414453">(Aug 29 2020 at 03:22)</a>:</h4>
<p>this is when documenting, not when building</p>



<a name="208414455"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414455" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414455">(Aug 29 2020 at 03:22)</a>:</h4>
<p>not sure if that makes a difference</p>



<a name="208414458"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414458" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414458">(Aug 29 2020 at 03:22)</a>:</h4>
<p>so <code>libcore</code> exists only in a place where <code>--extern</code> could let you find it</p>



<a name="208414469"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414469" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414469">(Aug 29 2020 at 03:23)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> if it's through <code>cargo doc</code> it should be the same</p>



<a name="208414477"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414477" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414477">(Aug 29 2020 at 03:23)</a>:</h4>
<p>anyway so I guess here we go to <code>PathKind</code>s again, although <em>I have no idea</em> where this is passed or how it interacts concretely</p>



<a name="208414531"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414531" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414531">(Aug 29 2020 at 03:24)</a>:</h4>
<p>there's a way to specify a search path (<code>-L dependency=target/release/deps</code>) so that you can't use <code>extern crate foo</code> or <code>::foo</code> to load the crate, but it <em>can</em> be found during the process of loading all transitive dependencies</p>



<a name="208414539"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414539" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414539">(Aug 29 2020 at 03:25)</a>:</h4>
<p>so e.g. it can find <code>libcore-*.rlib</code> which <code>libstd-*.rlib</code> needs but only the latter is directly visible to the currently compiled crate</p>



<a name="208414544"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414544" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414544">(Aug 29 2020 at 03:25)</a>:</h4>
<p>that makes sense</p>



<a name="208414546"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414546" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414546">(Aug 29 2020 at 03:25)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> I think the problem is with resolving a name relative to a crate that cannot be named by the current one, not with loading crates</p>



<a name="208414591"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414591" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414591">(Aug 29 2020 at 03:26)</a>:</h4>
<p>I have no idea how one gets from that to:</p>
<div class="codehilite"><pre><span></span><code>error: cannot find a built-in macro with name `cfg`
</code></pre></div>



<a name="208414592"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414592" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414592">(Aug 29 2020 at 03:26)</a>:</h4>
<p>well I think the issue is that rustdoc can't load the crate if it can't be named</p>



<a name="208414597"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414597" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414597">(Aug 29 2020 at 03:26)</a>:</h4>
<p>but if it's an indirect dependency, it's loaded anyway</p>



<a name="208414600"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414600" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414600">(Aug 29 2020 at 03:26)</a>:</h4>
<p><span class="user-mention" data-user-id="119009">@eddyb</span> the crate has to be loaded before the resolver is cloned because of rustdoc hacks</p>



<a name="208414601"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414601" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414601">(Aug 29 2020 at 03:27)</a>:</h4>
<p>you can't name <code>core</code> or <code>alloc</code> but <code>std</code> depends on them</p>



<a name="208414603"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414603" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414603">(Aug 29 2020 at 03:27)</a>:</h4>
<p>rustdoc and resolve see two different CStores</p>



<a name="208414605"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414605" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414605">(Aug 29 2020 at 03:27)</a>:</h4>
<p>it is loaded I promise you</p>



<a name="208414610"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414610" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414610">(Aug 29 2020 at 03:27)</a>:</h4>
<p>you just can't resolve paths into it</p>



<a name="208414616"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414616" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414616">(Aug 29 2020 at 03:27)</a>:</h4>
<blockquote>
<p>error: cannot find a built-in macro with name <code>cfg</code></p>
</blockquote>
<p>this is because <code>core</code> is being loaded twice</p>



<a name="208414618"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414618" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414618">(Aug 29 2020 at 03:27)</a>:</h4>
<p>o_O</p>



<a name="208414620"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414620" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414620">(Aug 29 2020 at 03:28)</a>:</h4>
<p>once as <code>Dependency</code> and once as <code>Crate</code></p>



<a name="208414658"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414658" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414658">(Aug 29 2020 at 03:28)</a>:</h4>
<p>hence my original question</p>



<a name="208414660"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414660" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414660">(Aug 29 2020 at 03:28)</a>:</h4>
<p>okay you should've started with that :P</p>



<a name="208414665"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414665" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414665">(Aug 29 2020 at 03:28)</a>:</h4>
<p>there's zero clues that "indirect dependency loaded twice" is happening</p>



<a name="208414668"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414668" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414668">(Aug 29 2020 at 03:28)</a>:</h4>
<p>yeah sorry</p>



<a name="208414670"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208414670" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208414670">(Aug 29 2020 at 03:28)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> but the second time it should just return the original <code>CrateNum</code> from the first loading, and have no side-effects</p>



<a name="208425064"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208425064" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208425064">(Aug 29 2020 at 09:11)</a>:</h4>
<blockquote>
<p>rustdoc wants to load all extern crates at startup</p>
</blockquote>
<p>This is where rustdoc is wrong and why you are getting numerous problems.</p>



<a name="208425101"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208425101" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208425101">(Aug 29 2020 at 09:12)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/issues/68427#issuecomment-673883976">https://github.com/rust-lang/rust/issues/68427#issuecomment-673883976</a></p>



<a name="208425169"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/182449-t-compiler/help/topic/Difference%20between%20%60PathKind%3A%3ADependency%60%20and%20%60Crate%60/near/208425169" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Vadim Petrochenkov <a href="https://rust-lang.github.io/zulip_archive/stream/182449-t-compiler/help/topic/Difference.20between.20.60PathKind.3A.3ADependency.60.20and.20.60Crate.60.html#208425169">(Aug 29 2020 at 09:15)</a>:</h4>
<p>Rustdoc should collect all paths it wants to resolve (intra-doc links) early when <code>Resolver</code> is still available, and resolve them.<br>
Then it would eliminate its use of <code>Resolver::clone_outputs</code> and solve multiple problems in <code>rustc_*</code> crates as well, existing only due to rustdoc.</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>